Számok faktoriálisának kiíratása előltesztelő (while) ciklussal (Faktorialis.pas)

program Faktorialis;
uses crt;
var i,a,n:integer;
BEGIN
   write('n:=');
   readln(n);

   i:=1;
   a:=1;
   while(i<=n) do begin
      writeln(a);
      a:=a*(i+1);
      i:=i+1;
      end;
END.




Számok faktoriálisának kiíratása for ciklussal (FaktorialisV1.pas)

program FaktorialisV1;
uses crt;
var i,a,n:integer;
BEGIN
   write('n:=');
   readln(n);
   a:=1;
   for i:=1 to n do begin
      writeln(a);
      a:=a*(i+1);
      end;
END.


Számok faktoriálisának kiíratása hátultesztelő (repeat - until) ciklussal (FaktorialisV2.pas)

program FaktorialisV2;
uses crt;
var i,a,n:integer;
BEGIN
   write('n:=');
   readln(n);
   i:=1;
   a:=1;
   repeat
      writeln(a);
      a:=a*(i+1);
      i:=i+1;
   until(i>n);
END.